Proving wire-wise correctness for Handel-C hardware compilation in HOL
نویسندگان
چکیده
The compilation of Handel-C programs into net-list descriptions of hardware components has been extensively used in commercial tools but never formally verified. In this paper we first introduce a variation of the existing semantic model for Handel-C compilation that is amenable for mechanical proofs and detailed enough to analyse properties about the generated hardware. We then use this model to prove the correctness of the wiring schema used to interconnect the different components at the hardware level and propagate control signals among them. Finally, we present the most interesting aspects of the mechanisation of the model and the correctness proofs in the HOL theorem prover.
منابع مشابه
Mechanised Wire-wise Verification of Handel-C Synthesis
The compilation of Handel-C programs into net-list descriptions of hardware components has been extensively used in commercial tools but never formally verified. In this paper, we first introduce an extension of the compilation schema that allows the synthesis of the prioritised choice construct. Then we present a variation of the existing semantic model for Handel-C compilation that is amenabl...
متن کاملA verified compiler for Handel-C
The recent popularity of Field Programmable Gate Array (FPGA) technology has made the synthesis of Hardware Description Language (HDL) programs into FPGAs a very attractive topic for research. In particular, the correctness in the synthesis of an FPGA programming file from a source HDL program has gained significant relevance in the context of safety or mission-critical systems. The results pre...
متن کاملA Veri ed Compiler for a Structured Assembly LanguagePaul
We describe the veriication of a compiler for a subset of the Vista language: a structured assembly language for the Viper microprocessor. This proof has been mechanically checked using the HOL system. We consider how the compiler correctness theorem could be used to deduce safety and liveness properties of compiled code from theorems stating that these properties hold of the source code. We al...
متن کاملA Proof-Producing Hardware Compiler for a Subset of Higher Order Logic
Higher order logic (HOL) is a modelling language suitable for specifying behaviour at many levels of abstraction. We describe a compiler from a ‘synthesisable subset’ of HOL function definitions to correctby-construction clocked synchronous hardware. The compiler works by theorem proving in the HOL4 system and goes through several phases, each deductively refining the specification to a more co...
متن کاملProvably Correct Hardware Compilation using Timing Diagrams
In this article we present a framework within which hardware implementations are proven correct from speciications given in an OCCAM-like language called Handel by the use of a robust set of mathematical trans-formational laws. The semantical basis for Handel and its hardware implementations are simple functions of time which are called timing diagrams. This basis allows to denote the abstract ...
متن کامل